const express = require('express');
const proies = require('./myproxy');
// body-parser
const body = require('body-parser');
// axios
const axios = require('axios');

const server = express();
server.use(body({ extended: false }));
server.use(body.json());


server.use('/static', express.static('./static'))

// server.get('/aa',(req,res)=>{
//     axios.get('http://localhost:9090/api/list')
//     .then(result=>
//         {
//             res.send(result.data)
//         }
//     )
// })

// server.get('/bb',(req,res)=>{
//     axios.get('http://localhost:9090/api/info')
//     .then(result=>
//         {
//             res.send(result.data)
//         }
//     )
// })


// server.post('/cc',(req,res)=>{
//     axios.post('http://localhost:9090/api/add')
//     .then(result=>
//         {
//             res.send(result.data)
//         }
//     )
// })

proies.forEach(item => {
    // item 是一个对象 
    server.use(item.source, (req, res) => {

        // req是前端浏览器提交给服务器的 
        // req.url  请求的url地址 
        // req.method  请求方法
        // req.query  前端get请求的参数 在这里 
        // req.body   前端post请求的参数在这里 
           const info = {}
           if(item.header){
            item.header.forEach(item=>{
                info[item] = req.headers[item]
            })
           }

           axios({
            url:item.target,
            method:req.method,
            params:req.query,
            data:req.body,
            headers:info
            
           })
           .then(result=>
                    {
                        res.send(result.data)
                    }
                )

     })
})


server.listen(8080, () => {
    console.log('我是8080 来自server1')
})